package com.ruoyi.wzgl.cgjh.mapper;

import java.util.List;

import com.ruoyi.wzgl.cgjh.domain.Cgjh;
import com.ruoyi.wzgl.cgjh.domain.CgjhMx;

/**
 * 采购计划Mapper接口
 *
 * @author huacai
 * @date 2025-04-07
 */
public interface CgjhMapper
{
    /**
     * 查询采购计划
     *
     * @param cgjhId 采购计划主键
     * @return 采购计划
     */
    public Cgjh selectCgjhByCgjhId(String cgjhId);

    /**
     * 查询采购计划列表
     *
     * @param cgjh 采购计划
     * @return 采购计划集合
     */
    public List<Cgjh> selectCgjhList(Cgjh cgjh);

    /**
     * 新增采购计划
     *
     * @param cgjh 采购计划
     * @return 结果
     */
    public int insertCgjh(Cgjh cgjh);

    /**
     * 修改采购计划
     *
     * @param cgjh 采购计划
     * @return 结果
     */
    public int updateCgjh(Cgjh cgjh);

    /**
     * 删除采购计划
     *
     * @param cgjhId 采购计划主键
     * @return 结果
     */
    public int deleteCgjhByCgjhId(String cgjhId);

    /**
     * 批量删除采购计划
     *
     * @param cgjhIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteCgjhByCgjhIds(String[] cgjhIds);

    /**
     * 批量删除计划单明细
     *
     * @param cgjhIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteCgjhMxByCgjhIds(String[] cgjhIds);

    /**
     * 批量新增计划单明细
     *
     * @param cgjhMxList 计划单明细列表
     * @return 结果
     */
    public int batchCgjhMx(List<CgjhMx> cgjhMxList);


    /**
     * 通过采购计划主键删除计划单明细信息
     *
     * @param cgjhId 采购计划ID
     * @return 结果
     */
    public int deleteCgjhMxByCgjhId(String cgjhId);
}
